/*
 * gt9xx.h
 *
 *  Created on: Jul 2, 2024
 *      Author: biubiu
 */

#ifndef INC_GT9XX_H_
#define INC_GT9XX_H_

/***********************************************************************************************************************
 * Includes
 **********************************************************************************************************************/
#include "public.h"
/**********************************************************************************************************************
 * Macro definitions
 **********************************************************************************************************************/
#define TOUCH_POINT_TOTAL           (1)     /* 此芯片最多支持五点触控 */

/**********************************************************************************************************************
 * Typedef definitions
 **********************************************************************************************************************/
typedef enum
{
    TP_ROT_NONE = 0,
    TP_ROT_90,
    TP_ROT_180,
    TP_ROT_270
} tp_rotation_t;

/***********************************************************************************************************************
 * Exported global variables
 **********************************************************************************************************************/

/***********************************************************************************************************************
 * Exported global functions (to be accessed by other files)
 **********************************************************************************************************************/

HAL_StatusTypeDef drv_i2c_touchpad_init(void);

void touchpad_set_rotation(tp_rotation_t rotation);

HAL_StatusTypeDef touchpad_is_touched(void);

void touchpad_get_pos(uint16_t *x, uint16_t *y, int index);


#endif /* INC_GT9XX_H_ */
